/*
  Round Trip
  题目描述
    现有一个 H 行 W 列的网格，从上到下是行递增的方向，从左到右是列递增的方向。
    令 (i, j) 表示第 i (1 ≤ i ≤ H) 行第 j (1 ≤ j ≤ W) 列的位置。
    每个网格要么是起点，要么是可以通行的道路，要么是障碍物，保证只有一个起点。
    网格 (i, j) 的情况用字符 Ci.j 描述：
      如果 Ci.j = s，那么 (i,j) 是起点；
      如果 Ci.j = .，那么 (i,j) 是道路；
      如果 Ci.j = #，那么 (i,j) 是障碍物；
    判断是否存在一条长度 ≥4 的道路:
      使之能够从起点开始，不断向水平方向或垂直方向的相邻格子移动，
      并最终能够回到起点，这期间不能穿过障碍物，并且除了在开始和结束时两次位于起点，
      其余时候都不能经过同一个格子两次。
  输入描述
    第 1 行，两个正整数 H, W。
    接下来 H 行，第 i (1 ≤ i ≤ n) 行 W 个字符 Ci.1, Ci.2, …, Ci.W。
  输出描述
    如果存在满足问题条件的道路，输出 "Yes"，否则输出 "No"。
  样例1
    输入
      4 4
      ....
      #.#.
      .S..
      .##.
    输出
      Yes
  样例2
    输入
      2 2
      S.
      .#
    输出
      No
  样例3
    输入
      5 7
      .#...#.
      ..#.#..
      ...S...
      ..#.#..
      .#...#.
  输出
    No
  提示
    4 ≤ H * W ≤ 10^6,
    H, W ≥ 2
*/